package com.it.common;

import com.it.enums.ErrorCode;

public class ResultUtils {

    /**
     * 请求成功, 返回code,data,message数据响应
     *
     * @param data
     * @param <T>
     * @return
     */
    public static <T> ResultResponse<T> success(T data) {
        return new ResultResponse<>(0, data, "success");
    }

    /**
     * 失败
     *
     * @param errorCode
     * @return
     */
    public static ResultResponse error(ErrorCode errorCode) {
        return new ResultResponse(errorCode);
    }

    public static ResultResponse error(ErrorCode errorCode, String message, String description) {
        return new ResultResponse(errorCode.getCode(), null, message, description);
    }

    /**
     * 失败
     *
     * @param errorCode
     * @return
     */
    public static ResultResponse error(ErrorCode errorCode, String description) {
        return new ResultResponse(errorCode.getCode(), errorCode.getMessage(), description);
    }

    /**
     * 失败
     *
     * @param code
     * @param message
     * @param description
     * @return
     */
    public static ResultResponse error(int code, String message, String description) {
        return new ResultResponse(code, null, message, description);
    }

}
